#ifndef __LOCONFIG__
#define __LOCONFIG__ 1

#include <string>
#include <cstdint>
#include <stdexcept>
#include <vector>

using std::vector;
using std::string;
using std::int32_t;


class LoConfig
{
public:
    /**
     * @brief LoConfig
     */
    LoConfig();

    /**
     * @brief LoConfig
     * @param file
     */
    LoConfig( const string& file);

    /**
     * @brief parseFile
     * @param file
     * @return
     */
    bool parseFile( const string& file);

    /**
     * @brief parseConfig
     * @param content
     * @return
     */
    bool parseString( const string& content);

    /**
     * @brief parseConfig
     * @param content
     * @return
     */
    bool parseString( const char* content);

    /**
     * @brief exist
     * @param config_name
     * @return
     */
    bool exist( const string& config_name);

    /**
     * @brief getConfig
     * @param config_name
     * @return
     */
    const LoConfigUnit& getConfig(const string& config_name);
private:


};

#endif
